home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 015 / printer2.arc / PRINTER2.BAS (.txt)
Encoding:
GW-BASIC  |  1986-02-15  |  14.4 KB  |  378 lines

  1. 10  '- PRINTER.BAS - VERSION 2.0 -
  2. 15  'Ver 1.0 Written by Wayne Evans Box 525 Hammond, Mn. 55938  6/1/1985
  3. 16  'Ver 2.0. Added hard disk sub-dir commands. 9/11/85
  4. 17  '
  5. 18  '
  6. 48  GOSUB 50000
  7. 50  SCREEN 0,0:KEY OFF:COLOR 7,0:WIDTH 80:CLS
  8. 60  LOCATE 2,26:PRINT ">>>  P R I N T E R  2.0  <<<"
  9. 70  LOCATE 4,60:PRINT "by Wayne Evans
  10. 97  '
  11. 98  '** MAIN MENU **
  12. 99  '
  13. 100  LOCATE 6,10:PRINT CHR$(213);CHR$(205);CHR$(91);" Main Menu ";CHR$(93)
  14. 110  LOCATE 6,25:PRINT STRING$(44,205);CHR$(184)
  15. 120  FOR N=7 TO 12:LOCATE N,10:PRINT CHR$(179):LOCATE N,69:PRINT CHR$(179):NEXT
  16. 130  LOCATE 13,10:PRINT CHR$(212);STRING$(58,205);CHR$(190)
  17. 140  LOCATE 8,16:PRINT"1.  List to screen           4.  Printer setup  
  18. 150  LOCATE 9,16:PRINT"2.  List directory           5.  Reset prt/pwr up
  19. 160  LOCATE 10,16:PRINT"3.  List to printer          6.  Exit to DOS
  20. 170  LOCATE 11,16:PRINT"                7.  Help Screens
  21. 180  LOCATE 14,10:INPUT"What is your choice";N
  22. 190  IF N>=1 AND N<=7 THEN 200 ELSE PRINT"Select a number from 1 to 7."
  23. 195  FOR T=1 TO 1000:NEXT T:LOCATE 15,1:PRINT SPACE$(50);:GOTO 180
  24. 200  ON N GOSUB 1000,2000,4000,6000,7330,5000,12700:GOTO 50
  25. 997  '
  26. 998  '** LIST TO SCREEN  **
  27. 999  '
  28. 1000  GOSUB 3000
  29. 1030  ON ERROR GOTO 13000
  30. 1040  OPEN "I",1,AN$
  31. 1050  CLS:GOSUB 1110
  32. 1060  CLOSE:GOSUB 12900 :RETURN
  33. 1110  GOSUB 3100
  34. 1120       FOR L=1 TO 23
  35. 1130           IF NOT EOF(1) THEN LINE INPUT #1,T$:PRINT T$
  36. 1140       NEXT L
  37. 1150    X$=INKEY$: IF X$=CHR$(27) THEN 1170 ELSE IF X$="" THEN 1150
  38. 1160    IF NOT EOF(1) THEN 1120
  39. 1170    RETURN
  40. 1997  '                
  41. 1998  '** List <A-D> directory **
  42. 1999  '
  43. 2000  GOSUB 3050 : LOCATE 18,10:PRINT"Enter drive [d:\] [path\] [path\]
  44. 2020  LOCATE 20,10:GOSUB 2050:GOSUB 2100:ON ERROR GOTO 2210
  45. 2030  FILES AN$
  46. 2040  GOSUB 2110:GOSUB 12900:RETURN
  47. 2050  PRINT "=>":LOCATE 20,12:PRINT SPACE$(65):LOCATE 20,12
  48. 2060  INPUT "",AN$:IF AN$="" THEN 50 ELSE RETURN
  49. 2097  '
  50. 2098  '** Directory list border and error routine **
  51. 2099  '
  52. 2100  CLS:PRINT"Drive [";AN$;"] contains the following files ......."
  53. 2110  FOR I=1 TO 6:PRINT "+-----------+";:NEXT
  54. 2120  RETURN           
  55. 2200  FOR T=1 TO 1000:NEXT T:CLS:COLOR 7,0:GOTO 2000
  56. 2210  IF ERR=53 THEN LOCATE 23,25:BEEP:COLOR 31,0:PRINT"FILE NOT FOUND":COLOR 15,0:LOCATE 23,40:PRINT "( Re-enter )":RESUME 2200
  57. 2220  IF ERR=71 THEN LOCATE 25,18:BEEP:COLOR 15,0:PRINT "<<--Drive door open or no disk in drive -->>":COLOR 7,0:RESUME 2200
  58. 2997  '
  59. 2998  '** Get name of file and drive for list to screen and printer **
  60. 2999  '
  61. 3000  GOSUB 3050
  62. 3010  LOCATE 18,10:PRINT "Enter drive [d:] [path] [filename.ext]":LOCATE 20,10
  63. 3020  PRINT "=>":LOCATE 20,12:PRINT SPACE$ (65)
  64. 3030  LOCATE 20,12:INPUT "",AN$:IF AN$="" THEN 3040 ELSE RETURN
  65. 3040  FOR Y=14 TO 23:LOCATE Y,1:PRINT SPACE$(71);:NEXT Y:GOTO 180
  66. 3050  LOCATE 16,10:PRINT "Press [ENTER] (with no input) to start over":RETURN
  67. 3097  '
  68. 3098  '** Scrolling routine **
  69. 3099  '
  70. 3100  LOCATE 25,19:COLOR 15,0
  71. 3110  PRINT "[ Press [ESC] to quit - [ENTER] to scroll ]":COLOR 7,0:RETURN
  72. 3997  '
  73. 3998  '** List to printer **
  74. 3999  '
  75. 4000  LOCATE 16,10:INPUT "Do you want to set the printer. (y/n)";YN$
  76. 4010  IF YN$="Y" OR YN$="y" THEN GOTO 6000 ELSE 4020
  77. 4020  GOSUB 3000
  78. 4050  ON ERROR GOTO 13000
  79. 4060  OPEN "I",1,AN$
  80. 4070  CLS:GOSUB 4800
  81. 4075  IF NUM=(12) THEN 4500 ELSE IF NUM=(9) THEN 4500 ELSE 4080
  82. 4080  IF NOT EOF(1) THEN LINE INPUT #1,T$:LPRINT T$ 
  83. 4090  X$=INKEY$:IF X$=CHR$(27) THEN 4110
  84. 4100  IF NOT EOF(1) THEN 4080
  85. 4110  CLOSE:LPRINT CHR$(12);:GOSUB 12900:RETURN
  86. 4500  IF NUM=(12) THEN NUM=(66-(MG*2)) ELSE IF NUM=(9) THEN NUM=(88-(MG*2))
  87. 4510     FOR LN=1 TO (NUM)
  88. 4520        IF NOT EOF(1) THEN LINE INPUT #1,T$:LPRINT T$ 
  89. 4530        X$=INKEY$:IF X$=CHR$(27) THEN 4110
  90. 4540     NEXT LN
  91. 4550  IF NOT EOF(1) THEN GOSUB 8520
  92. 4560  IF NOT EOF(1) THEN 4510 ELSE 4110
  93. 4800  CLS:LOCATE 12,15:PRINT ">>>>>>>>>>>>>>>[":COLOR 31,0
  94. 4810  LOCATE 12,32:PRINT "P R I N T I N G":COLOR 7,0
  95. 4820  LOCATE 12,49:PRINT "]<<<<<<<<<<<<<<<"
  96. 4830  LOCATE 23,28:PRINT "[ Press [ESC] to quit ]" :RETURN
  97. 4997  '
  98. 4998  '** Return to DOS **
  99. 4999  '
  100. 5000  SYSTEM
  101. 5997  '
  102. 5998  '** Main printer menu **
  103. 5999  '
  104. 6000  S$="!!!  MAKE SURE THE PRINTER IS ON.  !!!"
  105. 6010  CLS:COLOR 15,0:LOCATE 10,40 - LEN(S$)/2:PRINT S$:COLOR 7,0
  106. 6020  LOCATE 14,31:PRINT "Press [ENTER]....":INPUT "",E
  107. 6030  CLS:LOCATE 10,16:PRINT CHR$(213);CHR$(205);CHR$(91);" Printer Menu "
  108. 6040  LOCATE 10,33:PRINT CHR$(93);STRING$(31,205);CHR$(184)
  109. 6050  FOR N=11 TO 15:LOCATE N,16:PRINT CHR$(179)
  110. 6060  LOCATE N,65:PRINT CHR$(179):NEXT
  111. 6070  LOCATE 16,16:PRINT CHR$(212);STRING$(48,205);CHR$(190)
  112. 6080  LOCATE 12,22:PRINT "1.  Select character fonts. 
  113. 6090  LOCATE 14,22:PRINT "2.  Select page formatting.
  114. 6100  LOCATE 17,17:PRINT "Press [ENTER] for main menu."
  115. 6110  LOCATE 19,17:INPUT "What is your choice";AN
  116. 6120  ON ERROR GOTO 13000
  117. 6130  IF AN<0 OR AN>2 THEN BEEP:GOTO 6110
  118. 6140  IF AN=1 THEN 7000
  119. 6150  IF AN=2 THEN 8000 ELSE CLS:RETURN
  120. 6997  '
  121. 6998  '** Printer sub menu (fonts) **
  122. 6999  '
  123. 7000  CLS:LOCATE 6,1:PRINT CHR$(213);STRING$(27,205);CHR$(91)
  124. 7010  LOCATE 6,31:PRINT"Character Font Menu "
  125. 7020  LOCATE 6,51:PRINT CHR$(93);STRING$(28,205);CHR$(184)
  126. 7030  FOR N=7 TO 15:LOCATE N,1:PRINT CHR$(179):LOCATE N,80:PRINT CHR$(179):NEXT
  127. 7040  LOCATE 16,1:PRINT CHR$(212);STRING$(78,205);CHR$(190)
  128. 7050  L1$="1.   Condensed      - (on)                6.  Double Width   - (on)
  129. 7060  L2$="2.   Condensed      - (off)               7.  Double Width   - (off)
  130. 7070  L3$="3.   Emphasized     - (on)                8.  Select char set #1
  131. 7080  L4$="4.   Double Strike  - (on)                9.  Select char set #2
  132. 7090  L5$="5.   Emph,Doub-Strk - (off)              10.  Reset Prt to Power-up
  133. 7100  L6$="11.  Help Screen
  134. 7110  LOCATE 8,7:PRINT (L1$):LOCATE 9,7:PRINT (L2$):LOCATE 10,7:PRINT (L3$)
  135. 7120  LOCATE 11,7:PRINT (L4$):LOCATE 12,7:PRINT (L5$):LOCATE 14,33:PRINT (L6$)
  136. 7130  LOCATE 19,1:PRINT "Press [ENTER] for printer menu.
  137. 7140  PRINT:INPUT "What is your choice";A
  138. 7150  IF A<0 OR A >11 THEN BEEP: GOTO 7190
  139. 7160  IF A=0 THEN 6030
  140. 7170  IF A=11 THEN GOSUB 12200 : GOTO 7000
  141. 7180  ON A GOSUB 7240,7250,7270,7280,7260,7290,7300,7310,7320,7330
  142. 7190  FOR Y=21 TO 22
  143. 7200    LOCATE Y,1
  144. 7210    PRINT SPACE$(80);
  145. 7220  NEXT Y
  146. 7230  LOCATE 20,1:GOTO 7140
  147. 7240  LPRINT CHR$(15);:GOSUB 9000:RETURN
  148. 7250  LPRINT CHR$(18);:GOSUB 9000:RETURN
  149. 7260  LPRINT CHR$(27);"F";CHR$(27);"H";:GOSUB 9000:RETURN
  150. 7270  LPRINT CHR$(27);"E";:GOSUB 9000:RETURN
  151. 7280  LPRINT CHR$(27);"G";:GOSUB 9000:RETURN
  152. 7290  LPRINT CHR$(27);"W";CHR$(1);:GOSUB 9000:RETURN
  153. 7300  LPRINT CHR$(27);"W";CHR$(0);:GOSUB 9000:RETURN
  154. 7310  LPRINT CHR$(27);CHR$(55);:GOSUB 9000:RETURN
  155. 7320  LPRINT CHR$(27);CHR$(54);:GOSUB 9000:RETURN
  156. 7330  DEF SEG=&H40:PP=256*PEEK(9)+PEEK(8)+2:K=INP(PP):OUT PP,K XOR 4:OUT PP,K:DEF SEG:GOSUB 9000:RETURN
  157. 7997  '
  158. 7998  '** Printer sub menu (page formatting) **
  159. 7999  '
  160. 8000  CLS:LOCATE 2,7:PRINT CHR$(213);STRING$(7,205);CHR$(91)
  161. 8010  LOCATE 2,17:PRINT "Page Formatting ";CHR$(93);STRING$(37,205);CHR$(184)
  162. 8020  FOR N=3 TO 17:LOCATE N,7:PRINT CHR$(179):LOCATE N,71:PRINT CHR$(179):NEXT
  163. 8030  LOCATE 18,7:PRINT CHR$(212);STRING$(63,205);CHR$(190)
  164. 8040  LOCATE 4,11:PRINT "1.   Variable line spacing            (1-85)
  165. 8050  LOCATE 5,11:PRINT "2.   Normal line spacing              (12/72)
  166. 8060  LOCATE 6,11:PRINT "3.   Compressed line spacing    (on)  (9/72)
  167. 8070  LOCATE 7,11:PRINT STRING$(57,45)
  168. 8080  LOCATE 8,11:PRINT "4.   Skip over perforation      (no./lines)
  169. 8090  LOCATE 9,11:PRINT "5.   Skip over perforation      (off)
  170. 8100  LOCATE 10,11:PRINT STRING$(57,45)
  171. 8110  LOCATE 11,11:PRINT "6.   Send a form feed to printer
  172. 8120  LOCATE 12,11:PRINT "7    Send line feeds to printer       (1-127)
  173. 8130  LOCATE 13,11:PRINT "8.   Set Top and Bottom margin's
  174. 8140  LOCATE 14,11:PRINT STRING$(57,45)
  175. 8150  LOCATE 15,11:PRINT "9.   Reset prt to power up state
  176. 8160  LOCATE 16,11:PRINT "10.  Help Screens
  177. 8170  LOCATE 19,1:PRINT "Press [ENTER] for printer menu.
  178. 8180  PRINT:LOCATE 21,1:INPUT "What is your choice";ANS
  179. 8190  IF ANS<0 OR ANS >10 THEN BEEP:GOTO 8230
  180. 8200  IF ANS=0 THEN 6030
  181. 8210  IF ANS=10 THEN GOSUB 12800:GOTO 8000
  182. 8220  ON ANS GOSUB 8280,8310,8320,8330,8360,8370,8380,8440,7330
  183. 8230    FOR Y=21 TO 22
  184. 8240        LOCATE Y,1
  185. 8250        PRINT SPACE$(80)
  186. 8260    NEXT Y
  187. 8270  LOCATE 21,1:GOTO 8180
  188. 8280  LOCATE 21,35:INPUT"Enter a number for n = (n/72) ";NUM
  189. 8290  IF NUM<1 OR NUM>85 THEN LOCATE 22,35:PRINT "Number must be between 1-85":FOR DLY=1 TO 2000:NEXT:RETURN
  190. 8300  LPRINT CHR$(27);"A";CHR$(NUM);CHR$(27);"2";:GOSUB 9000:RETURN
  191. 8310  NUM=12:LPRINT CHR$(27);"A";CHR$(NUM);CHR$(27);"2";:GOSUB 9000:RETURN
  192. 8320  NUM=9:LPRINT CHR$(27);"A";CHR$(NUM);CHR$(27);"2";:GOSUB 9000:RETURN
  193. 8321  LPRINT CHR$(27);"A";CHR$(NUM);CHR$(27);"2";:GOSUB 9000:RETURN
  194. 8330  LOCATE 21,35:INPUT"How many lines to skip";LNS
  195. 8340  IF LNS<1 OR LNS>127 THEN GOTO 9020 ELSE 8350
  196. 8350  LPRINT CHR$(27);"N";CHR$(LNS);:GOSUB 9000:RETURN
  197. 8360  LPRINT CHR$(27);"O";:GOSUB 9000:RETURN
  198. 8370  LPRINT CHR$(12);:GOSUB 9000:RETURN
  199. 8380  LOCATE 21,35:INPUT "How many line feeds";LF
  200. 8390  IF LF<1 OR LF>127 THEN GOTO 9020 ELSE 8410
  201. 8410    FOR F=1 TO (LF)
  202. 8420            LPRINT CHR$(10);
  203. 8430    NEXT : GOSUB 9000:RETURN
  204. 8440  LOCATE 21,35:INPUT "How many blank lines per margin";MG
  205. 8450  IF MG<1 OR MG>127 THEN GOTO 9020 ELSE 8460
  206. 8460  IF NUM=(12)THEN 8470 ELSE IF NUM=(9) THEN 8490 ELSE 8530
  207. 8470  LPRINT CHR$(27);"C";CHR$(66);
  208. 8480  GOSUB 8510:GOSUB 9000:RETURN
  209. 8490  LPRINT CHR$(27);"C";CHR$(88);
  210. 8500  GOSUB 8510:GOSUB 9000:RETURN
  211. 8510  LPRINT CHR$(27);"N";CHR$(MG+1);
  212. 8520  FOR F=1 TO (MG-1):LPRINT CHR$(10);:NEXT:RETURN
  213. 8530  LOCATE 22,15
  214. 8540  PRINT "Margin's are set in normal or compressed mode only !
  215. 8550  FOR DLY=1 TO 4000:NEXT:RETURN
  216. 9000  LOCATE 22,1:COLOR 15:PRINT "Done....":COLOR 7
  217. 9010  FOR DLY = 1 TO 1000:NEXT:RETURN
  218. 9020  LOCATE 22,35:PRINT "Number must be between 1-127
  219. 9030  FOR DLY=1 TO 2000:NEXT:RETURN
  220. 9997  '
  221. 9998  '** Help screens **
  222. 9999  '
  223. 10000  X$="Variable line spacing":GOSUB 12500
  224. 10010  PRINT"To fit more printing on a page. You can change the spacing between
  225. 10020  PRINT"the lines. Allows you to fix a line spacing in multiples of 1/72.
  226. 10030  PRINT"The maximum is 85/72. - Normal is 12/72. Spacing is the distance
  227. 10040  PRINT"from the bottom of one line to the bottom of next line. Keep in
  228. 10050  PRINT"mind that spacing affects the Top OF Form position, since it
  229. 10060  PRINT"changes the number of lines per page.
  230. 10070  PRINT
  231. 10080  PRINT"Pressing number 2 on the menu, resets the lines to normal.
  232. 10090  PRINT"pressing number 3 on the menu, (compressed) sets the lines very 
  233. 10100  PRINT"close, but not touching one another.
  234. 10110  PRINT"See help screen number 8 for setting of top and bottom margin's.
  235. 10120  GOSUB 12600:RETURN
  236. 10200  X$="Skip perforation":GOSUB 12500
  237. 10210  PRINT "Selects the amount of lines to skip at the bottom of the page.
  238. 10220  PRINT "Do not set the vertical margin for a number greater than the page
  239. 10230  PRINT "length in effect.
  240. 10240  PRINT "If you select the compressed lines (9/72), it must be set first 
  241. 10250  PRINT "before you select to skip perforation lines.
  242. 10260  PRINT "Skip perforation off, will print continuously":GOSUB 12600 :RETURN
  243. 10400  X$="Form Feeds and Line Feeds" :GOSUB 12500
  244. 10410  PRINT "Form feed will advance the paper to the next Top Of Form, 
  245. 10420  PRINT "(one sheet) each time you select number 6 on the menu.
  246. 10430  PRINT
  247. 10440  PRINT "Line Feeds will advance the number of lines you enter. After
  248. 10450  PRINT "selecting number 7 on the menu, a -- How many line feeds? -- will
  249. 10460  PRINT "appear, enter the amount of lines you want to advance.
  250. 10470  PRINT "Pressing [ENTER] at the -- How many line feeds? -- will enter zero
  251. 10480  PRINT "line feeds and take you back to the menu.":GOSUB 12600:RETURN
  252. 10600  X$="Setting TOP and BOTTOM margin's":GOSUB 12500
  253. 10610  PRINT "Selecting number 8 on the menu will set the amount of lines to
  254. 10620  PRINT "skip on the top and bottom of the page.
  255. 10630  PRINT 
  256. 10640  PRINT "You MUST select either Normal (12/72) or Compressed (9/72) mode
  257. 10650  PRINT "on the menu (number 2 or 3) BEFORE you select setting top and
  258. 10660  PRINT "bottom margin's.
  259. 10670  PRINT 
  260. 10680  PRINT "Enter the amount of lines you want to skip.  That's it.  Now
  261. 10690  PRINT "you can go back and print your text.
  262. 10700  PRINT 
  263. 10710  PRINT "NOTE = You will have to reset all options before you print another
  264. 10720  PRINT "document.  The Top and Bottom settings are good for one document
  265. 10730  PRINT "only.":GOSUB 12600:RETURN
  266. 10800  X$="Printer to power up state and Help Screen":GOSUB 12500
  267. 10810  PRINT "When you select this option, the printer will reset to the power
  268. 10820  PRINT "up condition. This is a quick way to cancel previous settings.
  269. 10830  PRINT 
  270. 10840  PRINT "<< All >>  settings that you may have entered will be canceled.
  271. 10850  PRINT 
  272. 10860  PRINT "So be careful when selecting this option.":GOSUB 12600 : RETURN
  273. 11000  X$="HELP SCREEN INSTRUCTION":GOSUB 12500
  274. 11010  PRINT "The Help Screens will ask you -- Which number do you want to see?
  275. 11020  PRINT "You respond with the number of the menu item.":GOSUB 12600:RETURN
  276. 11200  X$="List to screen":GOSUB 12500
  277. 11210  PRINT "This option will ask you for the drive, path and file name,
  278. 11220  PRINT "(see help screen 2). Must be (text) to read it. It will then be
  279. 11230  PRINT "listed on the screen for you to examine. The file will scroll one
  280. 11240  PRINT "screen then stop, waiting for you to either press [ENTER] or
  281. 11250  PRINT "[ESC].Pressing [ENTER] will scroll to the next screen and so on
  282. 11260  PRINT "until the file has ended. Pressing [ESC] during viewing will
  283. 11270  PRINT "cancel the listing and get you back to the main menu.
  284. 11280  PRINT "You can use the print screen (shift-prtsc) and print a screen
  285. 11290  PRINT "out of the middle of the text. You may also toggle the printer
  286. 11300  PRINT "on or off (ctrl-prtsc) even while its scrolling. 
  287. 11310  GOSUB 12600:RETURN
  288. 11400  X$="List <A,B,C or D drive> directory or sub-directories":GOSUB 12500
  289. 11410  PRINT "Selecting menu 2 will list the directory files on the screen. 
  290. 11420  PRINT "You can select sub-directories. You must use the colon  :
  291. 11430  PRINT "after the drive letter. C:    Some example's follow.
  292. 11440  PRINT
  293. 11450  PRINT "     Root Dir = C:\    (list of dir titles)
  294. 11460  PRINT "     Sub Dir  = C:\misc\    (list files under misc dir)
  295. 11470  PRINT " Sub Sub Dir  = C:\misc\printer\  (list files under printer dir)
  296. 11480  PRINT " To list a file in a sub directory.       C:\misc\filename.ext
  297. 11490  PRINT
  298. 11500  PRINT " To list all files NOT in a sub-directory  =   A:\
  299. 11510  PRINT " To list 1 file NOT in a sub directory.    =   A:filename.ext
  300. 11520  PRINT
  301. 11530  PRINT "You may choose to print the directory to the printer using the 
  302. 11540  PRINT "(shift-prtsc).":GOSUB 12600:RETURN
  303. 11600  X$="Printer set up":GOSUB 12500
  304. 11610  PRINT "This option will take you to the main printer menu. From there
  305. 11620  PRINT "you can select to go to the font menu and change the character
  306. 11630  PRINT "fonts or go to the page formatting menu and change the line
  307. 11640  PRINT "spacing, skip lines, set top and bottom margins etc.
  308. 11650  GOSUB 12600:RETURN
  309. 11800  X$="List to printer":GOSUB 12500
  310. 11810  PRINT "This option will ask if you want to go to the printer menu. What
  311. 11820  PRINT "is the drive, path and file name, (see help screen 2). After 
  312. 11830  PRINT "answering these questions, will send your file to the printer and
  313. 11840  PRINT "print using the formatting and fonts you selected. If you selected
  314. 11850  PRINT "no printing options, it will print using the default settings. A 
  315. 11860  PRINT "sign will appear stating that the computer is printing. When the 
  316. 11870  PRINT "file is done a sign will appear at the bottom of the screen 
  317. 11880  PRINT "stating that it reached the end of the file.":GOSUB 12600:RETURN
  318. 12000  X$="EXIT TO DOS":GOSUB 12500
  319. 12010  PRINT "Selecting this option ends this program and returns you to DOS.
  320. 12020  GOSUB 12600:RETURN
  321. 12200  X$="Character Font Menu":GOSUB 12500
  322. 12210  PRINT "You may select to use these fonts together.
  323. 12220  PRINT
  324. 12230  PRINT "              Standard       X
  325. 12240  PRINT "              Condensed        X
  326. 12250  PRINT "              Emphasized         X
  327. 12260  PRINT "              Double Strike  X X X
  328. 12270  PRINT "              Double Width   X X X
  329. 12280  PRINT
  330. 12290  PRINT "Character set #1 is the default set. Character's 0 - 127
  331. 12300  PRINT "Character set #2 prints additional graphic characters. 128 - 255
  332. 12310  PRINT
  333. 12320  PRINT "Reset prt to power up. Resets all fonts and formatting that you
  334. 12330  PRINT "may have selected, so be careful when using this one.
  335. 12340  GOSUB 12600:RETURN
  336. 12497  '
  337. 12498  '** Center help screen titles **
  338. 12499  '
  339. 12500  DT$=" ---------- "
  340. 12510  CLS:PRINT TAB(27-LEN(X$)/2);DT$;X$;DT$
  341. 12520  PRINT:RETURN
  342. 12597  '
  343. 12598  '** Center help screen enter for menu **
  344. 12599  '
  345. 12600  M$="Press [ENTER] for menu"
  346. 12610  PRINT:PRINT TAB(27-LEN(M$)/2);DT$;M$;DT$
  347. 12620  INPUT "",E
  348. 12630  RETURN
  349. 12697  '
  350. 12698  '** Get number of help screen (main menu) **
  351. 12699  '
  352. 12700  LOCATE 14,35:INPUT "Which number do you want to see.";ANSWER
  353. 12710  IF ANSWER <1 OR ANSWER >7 THEN BEEP:GOTO 12700 ELSE 12720
  354. 12720  ON ANSWER GOSUB 11200,11400,11800,11600,10800,12000,11000:RETURN
  355. 12797  '
  356. 12798  '** Get number of help screen (page formatting) **
  357. 12799  '
  358. 12800  LOCATE 21,35:INPUT "Which number do you want to see.";ANSWER
  359. 12810  IF ANSWER <1 OR ANSWER >10 THEN BEEP:GOTO 12800 ELSE 12820
  360. 12820  ON ANSWER GOSUB 10000,10000,10000,10200,10200,10400,10400,10600,10800,11000:RETURN
  361. 12897  '
  362. 12898  '** End of file return to menu routine **
  363. 12899  '
  364. 12900  COLOR 15:LOCATE 25,9
  365. 12910  INPUT "<<-------------[ END OF FILE -- PRESS [ENTER] ]------------->>";E$
  366. 12920  COLOR 7:IF E$="" THEN RETURN ELSE BEEP:GOTO 12910
  367. 12997  '
  368. 12998  '** Error routine's **
  369. 12999  '
  370. 13000  IF ERR=53 OR ERR=76 OR ERR=75 THEN LOCATE 23,10:BEEP:COLOR 15,0:PRINT "<<-- Path or File not found - Re-enter or press ENTER key -->>":COLOR 7,0:IF ERL=1040 THEN RESUME 1000 ELSE RESUME 4020
  371. 13010  IF ERR=71 THEN LOCATE 25,18:BEEP:COLOR 15,0:PRINT "<<-- Drive door open or no disk in drive -->>":COLOR 7,0:FOR DLY=1 TO 5000:NEXT :RESUME 50
  372. 13020  IF ERR=25 OR ERR=27 THEN LOCATE 25,14:BEEP:COLOR 15,0:PRINT "<<-- Printer is out of paper or not turned on -->>":COLOR 7,0:FOR DLY=1 TO 5000:NEXT:CLS:RESUME 6000
  373. 50000  CLS:LOCATE 10,15:PRINT "This program is for public use and may be copied
  374. 50010  LOCATE 11,15:PRINT "and shared by all.  It is written for the IBM
  375. 50020  LOCATE 12,15:PRINT "printer.
  376. 50030  LOCATE 14,15:PRINT "(c)Copy written by Wayne Evans
  377. 60000  FOR T=1 TO 5000:NEXT: CLS:RETURN
  378.